Imagina navegar por un vasto paisaje. Ya sea que conduzcas por una autopista recta (un vector) o caminando por un sendero sinuoso del bosque (un lista), necesitas un GPS universal. En C++, ese GPS es el Iterador.
El Puente de la Programación Genérica
Los iteradores actúan como un mecanismo generalizado para navegar entre los elementos de un contenedor, sirviendo como puente entre algoritmos y estructuras de datos. Al utilizar una interfaz uniforme (begin/end), C++ logra Programación Genérica. Esto permite que la misma lógica procese colecciones diversas sin que el programador tenga que conocer la estructura subyacente de la memoria.
⚠️ Invalidación de Iteradores: CRÍTICO: Cualquier bucle que use un iterador para recorrer un contenedor no debe agregar elementos a ese contenedor. Hacerlo puede hacer que los iteradores existentes sean "obsoletos" (invalidados), lo que lleva a un comportamiento indefinido o fallos del programa.
Operaciones Estándar
El begin devuelve un iterador al primer elemento, mientras que end devuelve un centinela que representa uno más allá del último elemento.
*iter: Desreferenciar para acceder al elemento.++iter/--iter: Movimiento.==/!=: Operadores de igualdad para verificar la posición.
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>